package com.ww.springboot.boot.baseTest.design.adapter;

import com.ww.springboot.boot.baseTest.design.adapter.adapter.Mp5DownAdapter;
import com.ww.springboot.boot.baseTest.design.adapter.impl.Mp5Player;

/**
 * 描述：适配器模式
 * 1.创建一个适配器
 * 2.适配器自带新型机器不支持的功能 并且兼容新型机器自身功能 使用新型机器时配上适配器即可实现其他功能
 *
 *
 * @author 🧑 ‍wanwei
 * @since 2022-03-04 11:50
 */
public class Run {

    public static void main(String[] args) {


        Mp5Player mp5Player = new Mp5Player();
        mp5Player.play("mp5");
        mp5Player.play("mp4");

        //加上适配器之后就拥有原本没有的功能--装饰器模式好像也是这样的???
        //适配器是给对象添加适配器 装饰器是在对象表面包上一层装饰 --两者类似 但表现不同
        Mp5Player mp5Player2 = new Mp5Player(new Mp5DownAdapter());
        mp5Player2.play("mp5");
        mp5Player2.play("mp4");
        mp5Player2.play("mp3");
    }
}
